home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / bin / autoreconf-2.13 < prev    next >
Encoding:
Text File  |  2005-10-13  |  5.9 KB  |  205 lines

  1. #! /bin/sh
  2. # autoreconf - remake all Autoconf configure scripts in a directory tree
  3. # Copyright (C) 1994 Free Software Foundation, Inc.
  4.  
  5. # This program is free software; you can redistribute it and/or modify
  6. # it under the terms of the GNU General Public License as published by
  7. # the Free Software Foundation; either version 2, or (at your option)
  8. # any later version.
  9.  
  10. # This program is distributed in the hope that it will be useful,
  11. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13. # GNU General Public License for more details.
  14.  
  15. # You should have received a copy of the GNU General Public License
  16. # along with this program; if not, write to the Free Software
  17. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
  18. # 02111-1307, USA.
  19.  
  20. usage="\
  21. Usage: autoreconf [-f] [-h] [--help] [-m dir] [--macrodir=dir]
  22.        [-l dir] [--localdir=dir] [--force] [--verbose] [--version]
  23.        [--cygnus] [--foreign] [--gnits] [--gnu] [-i] [--include-deps]"
  24.  
  25. localdir=
  26. verbose=no
  27. show_version=no
  28. force=no
  29. automake_mode=--gnu
  30. automake_deps=
  31.  
  32. test -z "$AC_MACRODIR" && AC_MACRODIR=/usr/share/autoconf
  33.  
  34. while test $# -gt 0; do
  35.   case "$1" in 
  36.   -h | --help | --h*)
  37.     echo "$usage"; exit 0 ;;
  38.   --localdir=* | --l*=* )
  39.     localdir="`echo \"${1}\" | sed -e 's/^[^=]*=//'`"
  40.     shift ;;
  41.   -l | --localdir | --l*)
  42.     shift
  43.     test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
  44.     localdir="${1}"
  45.     shift ;;
  46.   --macrodir=* | --m*=* )
  47.     AC_MACRODIR="`echo \"$1\" | sed -e 's/^[^=]*=//'`"
  48.     shift ;;
  49.   -m | --macrodir | --m*)
  50.     shift
  51.     test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
  52.     AC_MACRODIR="$1"
  53.     shift ;;
  54.   --verbose | --verb*)
  55.     verbose=yes; shift ;;
  56.   -f | --force)
  57.     force=yes; shift ;;
  58.   --version | --vers*)
  59.     show_version=yes; shift ;;
  60.   --cygnus | --foreign | --gnits | --gnu)
  61.     automake_mode=$1; shift ;;
  62.   --include-deps | -i)
  63.     automake_deps=$1; shift ;;
  64.   --)     # Stop option processing.
  65.     shift; break ;;
  66.   -*) echo "$usage" 1>&2; exit 1 ;;
  67.   *) break ;;
  68.   esac
  69. done
  70.  
  71. if test $show_version = yes; then
  72.   version=`sed -n 's/define.AC_ACVERSION.[     ]*\([0-9.]*\).*/\1/p' \
  73.     $AC_MACRODIR/acgeneral.m4`
  74.   echo "Autoconf version $version"
  75.   exit 0
  76. fi
  77.  
  78. if test $# -ne 0; then
  79.   echo "$usage" 1>&2; exit 1
  80. fi
  81.  
  82. # The paths to the autoconf and autoheader scripts, at the top of the tree.
  83. top_autoconf=`echo $0|sed s%autoreconf%autoconf%`
  84. top_autoheader=`echo $0|sed s%autoreconf%autoheader%`
  85.  
  86. # Make a list of directories to process.
  87. # The xargs grep filters out Cygnus configure.in files.
  88. find . -name configure.in -print |
  89. xargs grep -l AC_OUTPUT |
  90. sed 's%/configure\.in$%%; s%^./%%' |
  91. while read dir; do
  92.   (
  93.   cd $dir || continue
  94.  
  95.   case "$dir" in
  96.   .) dots= ;;
  97.   *) # A "../" for each directory in /$dir.
  98.      dots=`echo /$dir|sed 's%/[^/]*%../%g'` ;;
  99.   esac
  100.  
  101.   case "$0" in
  102.   /*)  autoconf=$top_autoconf; autoheader=$top_autoheader ;;
  103.   */*) autoconf=$dots$top_autoconf; autoheader=$dots$top_autoheader ;;
  104.   *)   autoconf=$top_autoconf; autoheader=$top_autoheader ;;
  105.   esac
  106.  
  107.   case "$AC_MACRODIR" in
  108.   /*)  macrodir_opt="--macrodir=$AC_MACRODIR" ;;
  109.   *)   macrodir_opt="--macrodir=$dots$AC_MACRODIR" ;;
  110.   esac
  111.  
  112.   case "$localdir" in
  113.   "")  localdir_opt=
  114.        aclocal=aclocal.m4 ;;
  115.   /*)  localdir_opt="--localdir=$localdir"
  116.        aclocal=$localdir/aclocal.m4 ;;
  117.   *)   localdir_opt="--localdir=$dots$localdir"
  118.        aclocal=$dots$localdir/aclocal.m4 ;;
  119.   esac
  120.  
  121.   # Regenerate aclocal.m4 if necessary.  FIXME: if aclocal searches
  122.   # nonstandard directories, we need to deal with that here.  The
  123.   # easiest way is to move this info into configure.in.
  124.   run_aclocal=no
  125.   if test -f "$aclocal" &&
  126.      grep 'generated automatically by aclocal' $aclocal > /dev/null
  127.   then
  128.      run_aclocal=yes
  129.   else
  130.      if test -f `echo $aclocal | sed 's,/*[^/]*$,,;s,^$,.,'`/acinclude.m4
  131.      then
  132.     run_aclocal=yes
  133.      fi
  134.   fi
  135.   if test $run_aclocal = yes
  136.   then
  137.      if test $force = no &&
  138.         ls -lt configure.in $aclocal \
  139.            `echo $aclocal | sed 's,/*[^/]*$,,;s,^$,.,'`/acinclude.m4 |
  140.       sed 1q |
  141.           grep 'aclocal\.m4$' > /dev/null
  142.      then
  143.     :
  144.      else
  145.     test $verbose = yes && echo running aclocal in $dir, creating $aclocal
  146.     aclocal --output=$aclocal -I `echo $aclocal | sed 's,/*[^/]*$,,;s,^$,.,'`
  147.      fi
  148.   fi
  149.  
  150.   # Re-run automake if required.  Assumes that there is a Makefile.am
  151.   # in the topmost directory.
  152.   if test -f Makefile.am
  153.   then
  154.      amforce=
  155.      test $force = no && amforce=--no-force
  156.      test $verbose = yes && echo running automake`test x"$amforce" = x || echo " ($amforce)"` in $dir
  157.      automake $amforce $automake_mode $automake_deps
  158.   fi
  159.  
  160.   test ! -f $aclocal && aclocal=
  161.  
  162.   if test $force = no && test -f configure &&
  163.     ls -lt configure configure.in $aclocal | sed 1q |
  164.       grep 'configure$' > /dev/null
  165.   then
  166.     :
  167.   else
  168.     test $verbose = yes && echo running autoconf in $dir
  169.     $autoconf $macrodir_opt $localdir_opt
  170.   fi
  171.  
  172.   if grep 'A[CM]_CONFIG_HEADER' configure.in >/dev/null; then
  173.     templates=`sed -n '/A[CM]_CONFIG_HEADER/ {
  174.     s%[^#]*A[CM]_CONFIG_HEADER[     ]*(\([^)]*\).*%\1%
  175.     p
  176.     q
  177.       }' configure.in`
  178.     tcount=`set -- $templates; echo $#`
  179.     template=`set -- $templates; echo $1 | sed '
  180.     s/.*://
  181.     t colon
  182.     s/$/.in/
  183.     : colon
  184.     s/:.*//
  185.       '`
  186.     stamp=`echo $template | sed 's,/*[^/]*$,,;s,^$,.,'`/stamp-h`test "$tcount" -gt 1 && echo "$tcount"`.in
  187.     if test ! -f "$template" || grep autoheader "$template" >/dev/null; then
  188.       if test $force = no && test -f $template &&
  189.      ls -lt $template configure.in $aclocal $stamp 2>/dev/null \
  190.             `echo $localdir_opt | sed -e 's/--localdir=//' \
  191.                                   -e '/./ s%$%/%'`acconfig.h |
  192.        sed 1q | egrep "$template$|$stamp$" > /dev/null
  193.       then
  194.         :
  195.       else
  196.         test $verbose = yes && echo running autoheader in $dir
  197.         $autoheader $macrodir_opt $localdir_opt && 
  198.         { test $verbose != yes || echo touching $stamp; } &&
  199.         touch $stamp
  200.       fi
  201.     fi
  202.   fi
  203.   )
  204. done
  205.